<%--
    Document   : checklogin
    Created on : 07/09/2011, 12:17:05
    Author     : ad
--%>
<%@page import="clases.Conexion"%>
<% response.setHeader("Pragma","no-cache");%>
<% response.setHeader("Cache-Control","no-store");%>
<%response.setHeader("Cache", "no-cache"); %>
<% response.setDateHeader("Expires",0);%>



<%@page contentType="text/html" pageEncoding="UTF-8" language="java" import="clases.Conexion" import="clases.Error_Data"  %>
<%@ page session="true"  %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <script lenguaje="JavaScript">
           if(window.history.forward(1) != null)
              window.history.forward(1);
        </script>

        <meta http-equiv=="Pragma" content="no-cache"/>
        <meta http-equiv="Expires" content="-1"/>
        <meta http-equiv=="Cache-Control" content="no-store"/>
        <meta http-equiv="Cache" content="no-cache"/>
    </head>
    <body>
    </body>
</html>

<%
            String usuario = "";
            String clave = "";
            String departamento="";

            if (request.getParameter("Usuario") != null)
            {
            usuario = request.getParameter("Usuario");
            }

            if (request.getParameter("Clave") != null)
            {
                clave = request.getParameter("Clave");
            }

            if(request.getParameter("depart")!=null)
            {
                departamento=request.getParameter("depart");

            }else{
            //error no selecciono ningun departametno
                 %>
                        <jsp:forward page="index.jsp">
                        <jsp:param name="error" value="Error datos invalidos.<br>Vuelva a intentarlo." />
                        </jsp:forward>
                <%
            }


            //verificamos que no tengan carcter extraño
            Error_Data mis=new Error_Data();
            Conexion nuevas=new Conexion();

            if(mis.CaracterExtraño(usuario))
            { //redireccionamos la pagina al index.jsp
                 %>
                        <jsp:forward page="index.jsp">
                        <jsp:param name="error" value="Usuario
                        con caracteres invalidos.<br>Vuelva a intentarlo." />
                        </jsp:forward>
                <%
            }else if(mis.CaracterExtraño(clave))
            {//redireccionamos la pagina al index.jsp
                 %>
                        <jsp:forward page="index.jsp">
                        <jsp:param name="error" value="clave
                        con caracter invalidos.<br>Vuelve a intentarlo." />
                        </jsp:forward>
                <%
                //verificar el tipo de usuario que existe en la base de datos en la clase conexion
            }else if (nuevas.verificarLogin(usuario,clave))
            {
            HttpSession sesionOk = request.getSession();
            //agregamos en Usuario el nombre del usuario
            sesionOk.setAttribute("Usuario",usuario);

            /***
            configuramos la conexion cada vez que se loguea el usuario en nuestra
            aplicacion de esta manera configuramos solo una vez la conexion a la base
            de datos solo una vez y cerramos la configuracion despues de cerrar la sesion
            */
                Conexion xx=new Conexion();
                xx.configurar_Conexion(usuario, clave);

                String tipo=xx.verQuepermisostiene();
                if(tipo.compareTo("null")==0)
                if(usuario.compareTo("admin")==0){
                  if(clave.compareTo("Admin1")==0)
                    {//esto es cuando entra al inicio el primer usuario como gerente
                    sesionOk.setAttribute("Permiso","gerente");
                    sesionOk.setAttribute("departamento", departamento);
                    %>
                    <jsp:forward page="gerente.jsp" />
                    <%
                    }               }
                else
                {//si no corresponde a ese usuraio admin entonces se redirecciona a la pagina normal
                %>
                <jsp:forward page="index.jsp" />
                <%
                }
                else if(tipo.compareTo("usuario")==0)
                {//si el usuario es de tipo usuario
                    sesionOk.setAttribute("Permiso","usuario");
                    sesionOk.setAttribute("departamento", departamento);

                    byte logueado = xx.verificar_logueo(usuario);

                    if(logueado == 1){
                     %>
                                <jsp:forward page="index.jsp">
                                <jsp:param name="error" value="El usuario ya esta logueado.<br>Cierre Sesion." />
                                </jsp:forward>
                     <%
                     }
                     else{
                        boolean upda = xx.cambiarLoguin(usuario);
                %>
                        <jsp:forward page="logeado_usuario.jsp" />
                <%
                    }
                }else if(tipo.compareTo("gerente")==0)
                {
                    if(usuario.compareTo("admin")==0){
                  if(clave.compareTo("Admin1")==0)
                    {//esto es cuando entra al inicio el primer usuario como gerente
                    sesionOk.setAttribute("Permiso","gerente");
                    sesionOk.setAttribute("departamento", departamento);
                    %>
                    <jsp:forward page="gerente.jsp" />
                    <%
                    }               
                    }
                    else{
                        sesionOk.setAttribute("Permiso","gerente");
                        sesionOk.setAttribute("departamento", departamento);

                        byte logueado = xx.verificar_logueo(usuario);

                        if(logueado == 1){
                         %>
                                    <jsp:forward page="index.jsp">
                                    <jsp:param name="error" value="El usuario ya esta logueado.<br>Cierre Sesion." />
                                    </jsp:forward>
                         <%
                         }
                         else{
                            boolean upda = xx.cambiarLoguin(usuario);
                        %>
                        <jsp:forward page="gerente.jsp" />
                        <%
                        }
                    }
                }else if(tipo.compareTo("operador")==0)
                {//si el usuario es de tipo operador
                    sesionOk.setAttribute("Permiso","operador");
                    sesionOk.setAttribute("departamento", departamento);

                    byte logueado = xx.verificar_logueo(usuario);

                    if(logueado == 1){
                     %>
                                <jsp:forward page="index.jsp">
                                <jsp:param name="error" value="El usuario ya esta logueado.<br>Cierre Sesion." />
                                </jsp:forward>
                     <%
                     }
                     else{
                            boolean upda = xx.cambiarLoguin(usuario);
                 %>
                        <jsp:forward page="operador.jsp" />
                <%
                     }
                }
            }

            else {
            %>
            <jsp:forward page="index.jsp">
            <jsp:param name="error" value="Usuario y/o clave
            incorrectos.<br>Vuelve a intentarlo." />
            </jsp:forward>
            <%
            }
%>

<% response.setHeader("Pragma","no-cache");%>
<% response.setHeader("Cache-Control","no-store");%>
<%response.setHeader("Cache", "no-cache"); %>
<% response.setDateHeader("Expires",0);%>res",0);%>